home *** CD-ROM | disk | FTP | other *** search
/ ASME's Mechanical Engine…ing Toolkit 1997 December / ASME's Mechanical Engineering Toolkit 1997 December.iso / elec_eng / eepddsk2.lzh / UMATCH.BAS < prev    next >
BASIC Source File  |  1980-01-01  |  4KB  |  136 lines

  1. 100 REM program for MICROSTRIP MATCHING
  2. 110 PRINT  "ENTER DATA";
  3. 120 INPUT A,B,C,D,E,F,G,H,I
  4. 130 IF A < 1 THEN 160
  5. 140 IF A > 3 THEN 160
  6. 150 GOTO 180
  7. 160 PRINT "INPUT DATA NOT IN CORRECT FORMAT. RETYPE IT."
  8. 170 GOTO 110
  9. 180 PRINT
  10. 190 PRINT
  11. 200 PRINT "                           DATA ENTERED"
  12. 210 PRINT
  13. 220 IF A<>1 THEN 410
  14. 230 IF C<>0 THEN 160
  15. 240 PRINT "     SOURCE IMPEDANCE       =  ",B,"OHMS"
  16. 250 IF E>=0 THEN 270
  17. 260 IF E<0 THEN 290
  18. 270 PRINT "     IMPEDANCE NUMBER 1          =  ",D;"+J";ABS(E),"OHMS"
  19. 280 GOTO 360
  20. 290 PRINT "     IMPEDANCE NUMBER 1          =  ",D;"-J";ABS(E),"OHMS"
  21. 300 GOTO 360
  22. 310 IF E>=0 THEN 330
  23. 320 IF E<=0 THEN 350
  24. 330 PRINT "     IMPEDANCE NUMBER 2          =  ",D;"+J";ABS(E),"OHMS"
  25. 340 GOTO 360
  26. 350 PRINT "     IMPEDANCE NUMBER 2          =  ",D;"-J";ABS(E),"OHMS"
  27. 360 PRINT "     FREQUENCY                   =  ",F,"GHZ"
  28. 370 PRINT "     DIELECTRIC CONSTANT         =  ",G
  29. 380 PRINT "     SUBSTRATE THICKNESS         =  ",H,"IN"
  30. 390 PRINT "     CONDUCTOR THICKNESS         =  ",I,"IN"
  31. 400 GOTO 530
  32. 410 IF A=3 THEN 440
  33. 420 PRINT "     LOAD IMPEDANCE              =  ",B,"OHMS"
  34. 430 GOTO 310
  35. 440 IF E<0 THEN 470
  36. 450 PRINT "     IMPEDANCE NUMBER 3          =  ",D;"+J";ABS(E),"OHMS"
  37. 460 GOTO 480
  38. 470 PRINT "     IMPEDANCE NUMBER 3          =  ",D;"-J";ABS(E),"OHMS"
  39. 480 IF C<0 THEN 510
  40. 490 PRINT "     IMPEDANCE NUMBER 4          =  ",B;"+J";ABS(C),"OHMS"
  41. 500 GOTO 360
  42. 510 PRINT "     IMPEDANCE NUMBER 4          =  ",B;"-J";ABS(C),"OHMS"
  43. 520 GOTO 360
  44. 530 IF D-B=0 THEN 570
  45. 540 LET Y=((C*D+B*E)*(E+(((D-B)*(B*D-C*E))/((C*D)+(B*E)))-C))/(D-B)
  46. 550 IF Y<=0 THEN 570
  47. 560 GOTO 600
  48. 570 PRINT
  49. 580 PRINT "BASIC MATCH NOT POSSIBLE WITH DATA ENTERED.
  50. 590 GOTO 1400
  51. 600 LET Z=SQR(Y)
  52. 610 PRINT
  53. 620 IF A=3 THEN 680
  54. 630 IF A=2 THEN 660
  55. 640 PRINT "                INPUT NETWORK LINE PARAMETERS"
  56. 650 GOTO 690
  57. 660 PRINT "                OUTPUT NETWORK LINE PARAMETERS"
  58. 670 GOTO 690
  59. 680 PRINT "              INTERSTAGE NETWORK LINE PARAMETERS"
  60. 690 PRINT
  61. 700 LET X=Z*(D-B)
  62. 710 LET W=C*D+B*E
  63. 720 IF X=0 THEN 800
  64. 730 IF W=0 THEN 850
  65. 740 LET R=ABS(X/W)
  66. 750 IF R>2^24 THEN 850
  67. 760 LET Q=(ATN(X/W)*(180/3.14159265#))
  68. 770 IF W>0 THEN 870
  69. 780 LET K=Q+((X/ABS(X))*180)
  70. 790 GOTO 880
  71. 800 IF W=0 THEN 880
  72. 810 IF W<0 THEN 830
  73. 820 GOTO 740
  74. 830 LET K=180
  75. 840 GOTO 880
  76. 850 LET K=(X/ABS(X))*90
  77. 860 GOTO 880
  78. 870 LET K=Q
  79. 880 LET M=K/360
  80. 890 IF M<0 THEN 920
  81. 900 LET N=M
  82. 910 GOTO 930
  83. 920 LET N=.5 +M
  84. 930 IF F=0 THEN 570
  85. 940 LET O=2.997925E+10/(F*2.54E+09)
  86. 950 IF G<=0 THEN 570
  87. 960 LET L1=(N*O)/SQR(G)
  88. 970 IF H<=0 THEN 570
  89. 980 IF I<=0 THEN 570
  90. 990 LET P=0
  91. 1000 LET E1=(I/3.14159265#)*(LOG((2*H)/I)+1)
  92. 1010 LET T1=0
  93. 1020 LET T2=E1+T1
  94. 1030 LET P9=376.819437#*H
  95. 1040 LET E2=P9/(SQR(G)*T2*(1+1.735*G^(-7.240001E-02)*(T2/H)^(-.836)))
  96. 1050 LET D1=E2-Z
  97. 1060 IF P=1 THEN 1150
  98. 1070 IF P=2 THEN 1210
  99. 1080 IF P=3 THEN 1270
  100. 1090 IF D1<0 THEN 1120
  101. 1100 LET T1=T1+.01
  102. 1110 GOTO 1020
  103. 1120 LET  T1=T1-.01
  104. 1130 LET P=1
  105. 1140 GOTO 1020
  106. 1150 IF D1<0 THEN 1180
  107. 1160 LET T1=T1+.001
  108. 1170 GOTO 1020
  109. 1180 LET T1=T1-.001
  110. 1190 LET P=2
  111. 1200 GOTO 1020
  112. 1210 IF D1<0 THEN 1240
  113. 1220 LET T1 = T1+.0001
  114. 1230 GOTO 1020
  115. 1240 LET T1=T1-.0001
  116. 1250 LET P=3
  117. 1260 GOTO 1020
  118. 1270 IF D1 < 0 THEN 1300
  119. 1280 LET T1=T1+.00001
  120. 1290 GOTO 1020
  121. 1300 LET T1=T1-.00001
  122. 1310 LET W2=T1/H
  123. 1320 IF W2>=.6 THEN 1350
  124. 1330 LET K1=SQR(G/(1+.6*(G-1)*((T2/H)^.0297)))
  125. 1340 GOTO 1360
  126. 1350 LET K1=SQR(G/(1+.63*(G-1)*((T2/H)^.1255)))
  127. 1360 LET L=L1*K1
  128. 1370 PRINT "    IMPEDANCE       =",Z,"OHMS"
  129. 1380 PRINT "    LENGTH          =",L,"IN."
  130. 1390 PRINT "    WIDTH           =",T1,"IN."
  131. 1400 PRINT
  132. 1410 PRINT
  133. 1420 PRINT
  134. 1430 GOTO 110
  135. 1440 END
  136.